Supply Chain Attack on Axios Pulls Malicious Dependency from npm
Supply Chain Attack on Axios Pulls Malicious Dependency from...
axios@1.14.1が突然公開され、存在しなかった依存パッケージ plain-crypto-js@4.2.1を引き込むようになった。
このplain-crypto-jsはSocketによってマルウェアと確認
以下パッケージを依存、ロックファイルに含んでいる場合は対応必要
axios@1.14.1
axios@0.30.4(同様に改ざん)
plain-crypto-js@4.2.1
時系列
1. 2026-03-30 05:57 UTC — “偽装用の無害パッケージ”を公開
plain-crypto-js@4.2.0 を公開
中身は crypto‑js のコピーで完全に無害
目的:「新規アカウントが突然怪しいパッケージを公開した」ように見えないようにする
npm の “zero-history” チェックを回避するための履歴作り
2. 2026-03-30 23:59 UTC — “本物の悪性パッケージ”を公開
plain-crypto-js@4.2.1 を公開
postinstall: "node setup.js" を追加
setup.js に RAT(リモートアクセス型マルウェア)ドロッパーを仕込む
3. 2026-03-31 00:21 UTC — axios@1.14.1 を攻撃者が公開
本来 GitHub Actions で OIDC 署名付きで公開されるはずが、
手動で npm CLI から公開されている(=盗まれたトークン使用)
plain-crypto-js@4.2.1 を依存に追加
1.x 系ユーザーを狙った最初の攻撃
4. 2026-03-31 01:00 UTC — axios@0.30.4 を公開
0.x 系ユーザー向けに 39分後に追加攻撃
同じく plain-crypto-js を依存に注入
1.x と 0.x の両方を短時間で汚染し、最大範囲をカバー
axios ソフトウェアサプライチェーン攻撃の概要と対応指針 - GMO Flatt Security Blog
GMO Flatt Securityによる解説
@azu_re: @datadog/datadog-ciもaxios使ってたので、該当時間にnpx @datadog/datadog-ciとか走ってたらだめという話らしい
npxを扱うのは禁止にしても良さそう
野良MCP使うなで教訓化したのが生きてきた